#include <iostream>
#include <string>
#include <stack>
#include <sstream>

using namespace std;

void Test1(){
    string str;
    while (cin >> str){
        size_t pos = 0;
        while ((pos = str.find('_')) != string::npos){
            str.erase(pos, 1);
            str[pos] -= 32;
        }
        cout << str << endl;
    }
}

//对字符串中的所有单词进行倒排，要求如下：
//1.构成单词的字符只有26个大写或者小写英文字母
//2.非构成单词的字符均是为单词间隔符
//3.要求倒排后的单词间隔符以一个空格表示，若相邻单词间有过个间隔符，倒排转换后也只允许一个空格间隔符

void Test2(){
    stack<string> Stack;
    string s;
    getline(cin, s);
    for (auto &c : s) {
        if (!isalpha(c))
            c = ' ';
    }
    istringstream strm(s);
    string word;
    while (strm >> word)
        Stack.push(word);
    while (!Stack.empty()){
        cout << Stack.top() << " ";
        Stack.pop();
    }
}

int main(){
    Test1();
    return 0;
}


